package com.blood.modules.system.service;

import com.blood.core.resp.ResponseResult;
import com.blood.modules.system.dto.resp.UploadResp;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.List;

/**
 * @author 道人
 * @description 服务器文件管理
 */
public interface IFTPService {

    /**
     * 上传文件
     *
     * @param file
     * @return
     */
    ResponseResult<UploadResp> upload(MultipartFile file);

    /**
     * 批量文件上传
     *
     * @param files
     * @return
     */
    ResponseResult<List<UploadResp>> batchUpload(List<MultipartFile> files);

    /**
     * 下载文件
     *
     * @param fileName
     * @param localPath
     * @return
     * @throws IOException
     */
    void downloadFile(String fileName, String localPath);

    /**
     * 批量删除文件
     *
     * @param filePath
     * @return
     * @throws IOException
     */
    void batchRemove(List<String> filePath);

}
